#ifndef __MAPCELL_H__
#define __MAPCELL_H__

#include <string>

#define MAPCELL_CONTENT_VOID	"void"
#define MAPCELL_CONTENT_RNDENC	"rnd_enc"

/**
 *  @file
 *  Class "MapCell"
 */

/**
 * class MapCell
 * A cell where the Player evolves.
 */
class MapCell
{
public:
				MapCell();
				~MapCell();

	MapCell&	operator=(const MapCell& mapCellToCopy);

	void		setType(std::string type);
	std::string	getType();
	void		setContent(std::string content);
	std::string	getContent();
	void		setDesc(std::string desc);
	std::string	getDesc();
	void		activate();
	void		deactivate();
	bool		isActive();
	void		print();
	

private:

	std::string	m_type;			//!< Type of the cell
	std::string	m_content;		//!< Content of the Cell
	std::string m_desc;			//!< Descriptionof the Cell. Narrative elements are specified here
	bool		m_activate;		//!< if a cell is active or not
};


#endif // __MAPCELL_H__